package com.project.webservice.mapper;

import com.project.webservice.dto.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.mapping.ResultSetType;
import org.apache.ibatis.mapping.StatementType;

import java.util.List;

@Mapper
public interface RfidRunMapper {

    public List<List<?>> getQualityRidDays(SearchGetQualityRidDayDto searchGetQualityRidDayDto);

    public List<List<?>> getQualityRidsDay(SearchGetQualityRidDayDto searchGetQualityRidDayDto);

    public List<List<?>> getQualityRidsDayByRidName(SearchGetQualityRidDayDto searchGetQualityRidDayDto);

    public List<List<?>> getQualityRidsDayByRidSerial(SearchGetQualityRidDayDto searchGetQualityRidDayDto);

    public List<List<?>> getQualityTidsDayByTidUid(SearchGetQualityTidDayDto searchGetQualityTidDayDto);
    public List<List<?>> getQualityTidsDayByTidXuhao(SearchGetQualityTidDayDto searchGetQualityTidDayDto);


    public List<List<?>> getRidLiv(@Param("username") String username,
                                   @Param("RID_STATUS_ID")int ridStatusId,
                                   @Param("RID_VENDER_REGNUM")String ridVenderRegnum,
                                   @Param("pageno")int pageNo,
                                   @Param("pagelines")int pageLines);

    public List<List<?>> getRidLivByRidName(@Param("username") String username,
                                            @Param("condition_id") String conditionId,
                                            @Param("RID_STATUS_ID")int ridStatusId,
                                            @Param("RID_VENDER_REGNUM")String ridVenderRegnum,
                                            @Param("pageno")int pageNo,
                                            @Param("pagelines")int pageLines);


    public List<List<?>> getRidLivByRidSerial(@Param("username") String username,
                                              @Param("condition_id") String conditionId,
                                              @Param("RID_STATUS_ID")int ridStatusId,
                                              @Param("RID_VENDER_REGNUM")String ridVenderRegnum,
                                              @Param("pageno")int pageNo,
                                              @Param("pagelines")int pageLines);


    @Select("{call get_Center_link()}")
    public List<GetCenterLinkDto> getCenterLink();

    @Select("{call get_Center_link_detail()}")
    public List<GetCenterLinkDetailDto> getCenterLinkDetail();
    @Select("{call pro_get_TB_CZXL_RFID_DAY(#{date, mode=IN, jdbcType=VARCHAR})}")
    public List<ProGetTbCzxlRfidDayDto> proGetTbCzxlRfidDay(@Param("date")String date);
    @Select("{call pro_GET_TID_IN_OUT_DAY(#{date, mode=IN, jdbcType=VARCHAR},#{icon, mode=IN, jdbcType=VARCHAR})}")
    public List<ProGetTidInOutDayDto> proGetTidInOutDay(@Param("date")String date,@Param("icon")String icon);
}
